package org.example;


import com.itdd.pojo.User;
import com.itdd.service.impl.BackServiceImpl;
import com.itdd.service.impl.BookServiceImpl;
import com.itdd.service.impl.BorrowServiceImpl;
import com.itdd.service.impl.UserServiceImpl;

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner Sca = new Scanner(System.in);
//创造所有对象服务的方法
        BookServiceImpl bookService = new BookServiceImpl();
        BackServiceImpl backService = new BackServiceImpl();
        UserServiceImpl userService = new UserServiceImpl();
        BorrowServiceImpl borrowService = new BorrowServiceImpl();
//账号和密码的检测
        User user = userService.login();
//判断用户类型
        if (user.getUserType() == 0) {
            System.out.println("\n你是用户.请输入数字选择你想使用的功能");
            System.out.println("--------------------------------");
            while (true) {
                System.out.println("\n1.查看可借书籍\n2.查看已借书籍\n3.退出系统");
                int num1 = Sca.nextInt();
                if (num1 == 1) {
//借书功能
                    borrowService.borrowBook(user);
                } else if (num1 == 2) {
//还书功能
                    backService.backBook(user);
                } else if (num1 == 3) {
                    System.out.println("\n感谢使用图书管理系统！——作者：李学健");
                    return;
                } else {
                    System.out.println("\n请输入指定的数字!");
                }
            }
        } else {
            System.out.println("\n你是管理员.请输入数字选择你想使用的功能");
            System.out.println("-----------------------------------");
            while (true) {
                System.out.println("\n1.添加书籍\n2.删除书籍\n3.管理借书记录\n4.管理还书记录\n5.用户管理\n6.退出系统");
                int num2 = Sca.nextInt();
                switch (num2) {
                    case 1: {
//加书功能
                        bookService.addBook();
                    }
                    break;
                    case 2: {
//删书功能
                        bookService.deleteBook();
                    }
                    break;
                    case 3: {
//所有借书的记录
                        borrowService.displayBorrow();
                    }
                    break;
                    case 4: {
//所有还书的记录
                        backService.displayBack();
                    }
                    break;
                    case 5: {
//管理用户
                        userService.controlUser();
                    }
                    break;
                    case 6: {
                        System.out.println("\n谢谢使用图书管理系统！——作者：李学健");
                        return;
                    }
                    default: {
                        System.out.println("\n请输入指定的数字！");
                    }
                }
            }
        }
    }
}